Configuration solutions are widely used to enable a device to be configured for different operations. An example of a conventional configuration system 100 is shown in FIG. 1. In configuration system 100, configuration pins A(0), A(1), and A(2) (e.g., pins that set the address of a device) are dedicated for configuration purposes only. Unneeded configuration pins cannot be used for other functions, which may render them unused, wasting resources. Since different users often have different requirements, some users may desire maximized flexibility with a large number of configuration pins while other users may desire maximum functionality with large number of general purpose inputs/output (“GPIO”) pins. With conventional configuration system 100, the circuit designer faces a trade-off between flexibility and functionality, and has to decide what is the optimum number of configuration pins verses GPIO pins.
Configuration pins A(0), A(1), and A(2) are dedicated address pins and cannot be used for other functions. Accordingly, the vendor of configuration system 100 has the choice of fabricating a large variety of configuration systems 100 each having a different number of configuration and GPIO pins tailor made for specific applications or fabricate a few alternative solutions designed to serve the widest variety of customer needs. Fabricating a large variety of configuration systems 100 each tailor made for a specific application fails to reap the efficiencies of large scale manufacturing. Fabricating a few alternative solutions designed to serve the widest variety of customer needs results in configuration systems not optimized for any one application.